Add aggregator CLI commands for configuration parameters - #3438
Open
turmelclem wants to merge 19 commits into
Open
Add aggregator CLI commands for configuration parameters#3438turmelclem wants to merge 19 commits into
turmelclem wants to merge 19 commits into
Conversation
There was a problem hiding this comment.
clippy found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.
turmelclem
force-pushed
the
ctl/3392-add-aggregator-CLI-command-for-configuration-parameters
branch
3 times, most recently
from
July 30, 2026 12:38
ddfd41b to
10aa1ef
Compare
turmelclem
marked this pull request as ready for review
July 31, 2026 12:05
turmelclem
requested review from
Alenar,
curiecrypt,
damrobi,
hjeljeli32 and
jpraynaud
as code owners
July 31, 2026 12:05
turmelclem
force-pushed
the
ctl/3392-add-aggregator-CLI-command-for-configuration-parameters
branch
6 times, most recently
from
July 31, 2026 13:10
2d65553 to
ccb24d2
Compare
There was a problem hiding this comment.
Pull request overview
This PR introduces new aggregator CLI commands to export/import protocol configuration markers, along with a new mithril-protocol-config reader interface/model and Cardano-chain message/payload encoding support to make protocol configuration markers portable and verifiable.
Changes:
- Add
protocol-configuration export-markers/import-markersCLI commands (JSON export + datum generation/import validation). - Add protocol-configuration “tools” and dependency injection wiring to read on-chain markers and generate signed datums.
- Add
mithril-protocol-configmodels/messages (CBOR encoding) + payload signing structure + test doubles.
Reviewed changes
Copilot reviewed 26 out of 27 changed files in this pull request and generated 10 comments.
Show a summary per file
| File | Description |
|---|---|
| mithril-stm/Cargo.toml | Switch ciborium to workspace dependency for consistent versioning. |
| mithril-common/src/entities/type_alias.rs | Add hex-encoded secret key type alias for protocol configuration markers. |
| mithril-common/src/crypto_helper/ed25519_alias.rs | Add ED25519 type aliases for protocol configuration markers signing/verifying. |
| mithril-common/Cargo.toml | Switch ciborium to workspace dependency. |
| mithril-aggregator/src/tools/protocol_configuration.rs | New tool: verify imported configs against chain window + build signed datum + datum size check. |
| mithril-aggregator/src/tools/mod.rs | Register/export ProtocolConfigurationTools. |
| mithril-aggregator/src/test/double/dummies.rs | Add Dummy impl for HumanReadableProtocolConfiguration for tests. |
| mithril-aggregator/src/dependency_injection/containers/protocol_configuration.rs | New DI container for protocol-configuration commands. |
| mithril-aggregator/src/dependency_injection/containers/mod.rs | Export the new protocol-configuration DI container. |
| mithril-aggregator/src/dependency_injection/builder/support/compatibility.rs | Add construction + getter for a ProtocolConfigurationMarkersReader (prod vs dummy). |
| mithril-aggregator/src/dependency_injection/builder/mod.rs | Add stored dependency + container creation method for protocol-configuration commands. |
| mithril-aggregator/src/configuration.rs | Add ProtocolConfigurationReaderParameters + ConfigurationSource accessor for reader params. |
| mithril-aggregator/src/commands/protocol_configuration_command.rs | Implement CLI subcommands, JSON IO, consistency checks, datum generation. |
| mithril-aggregator/src/commands/mod.rs | Wire new ProtocolConfiguration command into main CLI. |
| internal/mithril-protocol-config/src/test/double/mod.rs | Export new dummy markers reader from test doubles. |
| internal/mithril-protocol-config/src/test/double/dummy_markers_reader.rs | Add dummy ProtocolConfigurationMarkersReader for test environments. |
| internal/mithril-protocol-config/src/test/double/dummies.rs | Add dummies for protocol-configuration marker models/messages. |
| internal/mithril-protocol-config/src/model.rs | Add protocol configuration marker model + ConfigurationComputerFromMarkers helper with fallback lookup. |
| internal/mithril-protocol-config/src/lib.rs | Export cardano_chain module publicly. |
| internal/mithril-protocol-config/src/interface.rs | Add ProtocolConfigurationMarkersReader trait. |
| internal/mithril-protocol-config/src/cardano_chain/protocol_configuration_reader.rs | Add Cardano-chain reader type for markers (currently stubbed). |
| internal/mithril-protocol-config/src/cardano_chain/payload.rs | Add payload structs and signing helper for protocol configuration markers. |
| internal/mithril-protocol-config/src/cardano_chain/mod.rs | Add Cardano-chain module exports for message/payload/reader. |
| internal/mithril-protocol-config/src/cardano_chain/message.rs | Add CBOR message/codec for protocol configuration markers. |
| internal/mithril-protocol-config/Cargo.toml | Add dependencies needed for CBOR/hex/serde + chain reader integration. |
| Cargo.toml | Add workspace ciborium dependency. |
| Cargo.lock | Lockfile updates for new deps/crate wiring. |
Suppressed comments (1)
mithril-aggregator/src/commands/protocol_configuration_command.rs:345
- User-facing CLI output contains spelling/grammar issues ("Sucessfuly write"), which makes the command output look unpolished.
println!(
"Sucessfuly write Tx datum file at {}",
self.target_path.to_string_lossy()
);
turmelclem
force-pushed
the
ctl/3392-add-aggregator-CLI-command-for-configuration-parameters
branch
4 times, most recently
from
July 31, 2026 15:54
aba2fbb to
0f67a96
Compare
turmelclem
temporarily deployed
to
testing-preview
July 31, 2026 16:09 — with
GitHub Actions
Inactive
…empty read impl for cardano chain adapter
…s with fallback logic for ProtocolConfigurationReader
…mport and on chain configurations
protocol configutation markers
turmelclem
force-pushed
the
ctl/3392-add-aggregator-CLI-command-for-configuration-parameters
branch
from
August 5, 2026 13:55
c990269 to
50e2689
Compare
turmelclem
force-pushed
the
ctl/3392-add-aggregator-CLI-command-for-configuration-parameters
branch
from
August 5, 2026 14:02
50e2689 to
c7a16da
Compare
…ion consistency for protocol-configuration import command
…rification on protocol-configuration command
…ism, and rework protocol-configuration command parameters
…eader, and using dedicated struct for CBOR conversion
turmelclem
force-pushed
the
ctl/3392-add-aggregator-CLI-command-for-configuration-parameters
branch
from
August 5, 2026 14:24
c7a16da to
5792cc0
Compare
jpraynaud
reviewed
Aug 5, 2026
turmelclem
force-pushed
the
ctl/3392-add-aggregator-CLI-command-for-configuration-parameters
branch
from
August 5, 2026 14:46
5792cc0 to
97b316f
Compare
…MithrilNetworkConfiguration
turmelclem
force-pushed
the
ctl/3392-add-aggregator-CLI-command-for-configuration-parameters
branch
from
August 5, 2026 14:51
97b316f to
a134e72
Compare
turmelclem
temporarily deployed
to
testing-2-preview
August 5, 2026 15:11 — with
GitHub Actions
Inactive
turmelclem
temporarily deployed
to
testing-preview
August 5, 2026 15:11 — with
GitHub Actions
Inactive
Alenar
approved these changes
Aug 5, 2026
Collaborator
There was a problem hiding this comment.
you forgot to rename the file following the renaming of the structure 😅
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Content
aggregator cli :
protocol-config :
Pre-submit checklist
Issue(s)
this PR closes #3392